Method and apparatus for calibration of a distance sensor in a vehicle navigation system

ABSTRACT

Method and apparatus for modifying an odometer reading in a vehicle navigation system to compensate for odometer errors. A first distance measurement is obtained from the odometer, and a second distance measurement is obtained from at least one other sensor. The difference between the first and second distance measurements is determined and an adjustment amount is generated in response thereto. A modification factor is then adjusted by the adjustment amount, the modification factor being for modifying the odometer reading. The odometer reading is then modified with the modification factor. A method and apparatus for selecting a pulse rate setting in a vehicle navigation system to correspond to a pulse rate associated with the odometer are also described. A first distance measurement is obtained from the odometer and a second distance measurement is obtained from at least one other sensor. The difference between the first and second distance measurements is then determined. The pulse rate setting is changed to correspond to the odometer pulse rate if the difference is greater than a threshold level, and is left unchanged if the difference is less than the threshold level.

This is a Continuation application of copending prior application Ser.No. 08/528,075 filed on Sep. 14, 1995 the disclosure of which isincorporated herein by reference.

BACKGROUND OF THE INVENTION

The present invention relates generally to vehicle navigation systems.More specifically, the invention relates to methods and apparatus whichprovide periodic, on-the-fly calibration of readings from a vehicle'sodometer sensor to ensure accurate determination of the vehicle'sposition by the navigation system.

Vehicle navigation systems have traditionally employed a variety ofsensors to determine the position, speed, and heading of a vehicle. Forexample, global positioning system (GPS) sensors have been employed todetect signals from GPS satellites which are, in turn, employed by thenavigation system to determine the position of a vehicle. On-boardsensors such as magnetic compasses and gyroscopes have been employed tosense the vehicle's heading as well as the angular accelerationaccompanying changes in the vehicle heading. For measuring distancestraveled by a vehicle, navigation systems have traditionally employedthe vehicle's odometer signal. It is evident that the accuracy of thedata received from these various sensors is essential to the reliabledetermination of the vehicle's position.

The accuracy of data received from a vehicle's odometer is influenced bya number of factors. Because an odometer typically detects wheelrevolutions as representative of travelled distance, the tire size isdirectly related to the accuracy of the reported travel distance. Forcurrent navigation systems, once the vehicle's tire size is known, it ismanually programmed into the navigation system to properly correlatewheel revolutions to travelled distance. However, it is well known thatthe size of a vehicle's tires change over time as they wear down fromcontact with the road. Moreover, factors such as the air pressure of thetires and the weight loaded on the vehicle at any given time producevariation in travel distance reported by the odometer. The tire size maybe periodically reprogrammed into the system to account for suchvariations, but this is obviously impractical in that a difficult manualreprogramming would frequently be required, possibly every time thenavigation system is used.

Another potential source of error in measured distance reported by anodometer is a mismatch between the odometer's pulse rate and the pulserate setting of the navigation system. Odometers generate a pulse trainin which a specific number of pulses (e.g., 2000) represents a unitdistance (e.g., a mile). For example, Nissan vehicles employ a pulserate of 2000 pulses/mile while Ford vehicles employ a pulse rate of 8000pulses/mile. Therefore, each navigation system must be configured tocorrespond to the type of vehicle in which it is installed. Otherwisevery large scale errors may result. If, for example, the pulse ratesetting in a navigation system installed in a Ford corresponded to thepulse rate of a Nissan, an error factor of four would be introduced. Thepulse rate setting is typically done before a navigation system isinstalled and is difficult to change where, for example, the odometer inthe vehicle is changed, or the navigation system is installed in adifferent vehicle. Thus, while detection of the error may be elementary,correction of the error remains problematic.

It is therefore apparent that there is a need for a convenient techniqueby which odometer measurements may be rendered reliable and accuratedespite the many unpredictable variations encountered over the course oftime. There is also a need for a technique to determine whether anavigation system's pulse rate setting corresponds to the pulse rate ofthe associated odometer, and to reset the pulse rate setting if it isfound to be in error.

SUMMARY OF THE INVENTION

The present invention provides methods and apparatus which address theproblems discussed above. Specifically, the present invention enables avehicle navigation system to automatically compensate for odometermeasurement errors due to changes in tire and road conditions as thosechanges occur. According to a specific embodiment of the invention, theodometer reading is modified by a modification factor which isperiodically adjusted to reflect changing conditions. Initially, themodification factor may be set to correspond to the tire size. A traveldistance is measured using data from the odometer and at least one othersensor, such as, for example, a GPS receiver. The difference between themeasurements is calculated and an adjustment amount is generated bywhich the modification factor is adjusted. In specific embodiments,there is a maximum value limit for the adjustment amount which variesdepending upon the number of times the modification factor has beenadjusted. Similarly, in other specific embodiments, the number ofdistance data points used to measure the travel distances for thisprocedure varies depending upon the number of adjustments to themodification factor.

Several features are provided in various specific embodiments of theinvention which verify the integrity of the data employed to obtain thevarious distance measurements used to calibrate the odometer. Forexample, if the difference between the distance measurement from theodometer and the distance measurement from the other sensor or sensorsis greater than a threshold level, those distance measurements arediscarded and new distance measurements using new data are obtained.Similarly, if the distance data employed to determine the distancemeasurements is determined to be unreliable, the distance measurementsare discarded and new distance measurements are obtained. In anotherembodiment, different vehicle positions are determined based on thedifferent distance measurements. It is then determined whether therelative relationship between the different positions is consistent withthe current modification factor. For example, if the modification factorhas been determined to be too large yet the position corresponding tothe odometer is behind the position corresponding to the other sensor,the positions are determined to be inconsistent with the modificationfactor, i.e., the position of the odometer should be ahead of the otherposition if the modification factor has been determined to be too large.If the results are inconsistent, new distance measurements are obtained.

Thus, according to the invention, a method and apparatus for modifyingan odometer reading in a vehicle navigation system to compensate forodometer errors are described. A first distance measurement is obtainedfrom the odometer, and a second distance measurement is obtained from atleast one other sensor. The difference between the first and seconddistance measurements is determined and an adjustment amount isgenerated in response thereto. A modification factor is then adjusted bythe adjustment amount, the modification factor being for modifying theodometer reading. The odometer reading is then modified with themodification factor.

A method and apparatus for selecting a pulse rate setting in a vehiclenavigation system to correspond to a pulse rate associated with theodometer are also described. The invention employs an additional sensorsuch as, for example, a GPS receiver to collect data corresponding totraveled distance in parallel with the odometer. The distances measuredby the odometer and the sensor are compared, and if the differencebetween the two measurements is greater than some threshold (indicatinga large error likely due to an incorrect pulse rate), the system changesits pulse rate setting to correspond to the pulse rate of the odometer.In specific embodiments, the correct pulse rate setting is determined bythe relationship between the two measurements. For example, according toa specific embodiment, if the pulse rate setting currently employed bythe vehicle navigation system is 8000 pulses/mile but the odometerregisters only about one-quarter the distance registered using the GPSdata, the system resets its pulse rate setting to 2000 pulses/mile. If,however, the distance between the measurements is below the threshold,the pulse rate setting remains unchanged.

Thus, according to the invention, a first distance measurement isobtained from the odometer and a second distance measurement is obtainedfrom at least one other sensor. The difference between the first andsecond distance measurements is then determined. The pulse rate settingis changed to correspond to the odometer pulse rate if the difference isgreater than a threshold level, and is left unchanged if the differenceis less than the threshold level.

A further understanding of the nature and advantages of the presentinvention may be realized by reference to the remaining portions of thespecification and the drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a vehicle navigation system for use withthe present invention;

FIG. 2 is a diagram illustrating the operation of the pulse ratedetection routine according to a specific embodiment of the invention;

FIG. 3 is a flowchart illustrating the operation of the pulse ratedetection routine according to a specific embodiment of the invention;

FIG. 4 is a diagram illustrating the various states of the distancecalibration routine according to a specific embodiment of the invention;

FIG. 5 is a flowchart illustrating the operation of the distancecalibration routine according to a specific embodiment of the invention;

FIG. 6 is a diagram illustrating the determination of the consistency ofan adjustment factor;

FIG. 7 is a diagram illustrating the conditions under which the vehicleposition is adjusted;

FIG. 8 is a diagram illustrating the conditions under which the doubtcounter is cleared; and

FIG. 9 is a diagram illustrating the "Big Error" condition.

DESCRIPTION OF THE PREFERRED EMBODIMENT

FIG. 1 is a block diagram of a vehicle navigation system 10 for use withthe present invention. Sensors 12 to 16 and GPS receiver 18 are coupledto computing means 20 through sensor/GPS interface 22. In typicalembodiments, the mileage sensor 12 comprises an odometer; the angularvelocity sensor 14 comprises a gyroscope, or a differential odometercoupled to the wheels of the vehicle; and the geomagnetic sensor 16usually comprises a magnetic compass mounted in the vehicle. A globalpositioning system (GPS) data receiver 18 is provided for receivingsignals from, for example, a satellite-based navigation system. Datafrom sensor/GPS interface 22 is transmitted to CPU 24, which performscalibration, signal processing, dead-reckoning, vehicle positioning, androute guidance functions. A database containing map information may bestored in storage medium 26, with software directing the operation ofcomputing means 20 stored in ROM 28 for execution by CPU 24. RAM 30permits reading and writing of the information necessary to execute suchsoftware programs. Storage medium 26 may comprise a hard disk drive,CD-ROM or integrated circuit onto which digitized map information hasbeen stored. Output controller 32, which may comprise a graphicscontroller, receives data processed by CPU 24 and transmits such data tooutput communicator 34, usually comprising a display screen. The usermay input data, such as a desired destination, through user interface36, typically comprising a keyboard.

The map database stored in storage medium 26 preferably comprisespositional data such as, for example, latitude and longitudecoordinates, to describe road intersections, road segments, landmarksand points of interest, and other geographical information. The database may further comprise data representing characteristics of roads orplaces on the map, such as road and place names, road features such asdividers, one-way restrictions, surface, speed limit, shape, elevation,and other properties. Using the data stored in the map data base, thevehicle navigation system generates one or more possible positions ofthe vehicle by comparing the dead-reckoned position to the roadsegments, intersections, and other geographical locations stored in thedata base. The system then filters the set of position possibilities andselects from the remaining position possibilities a position deemed tobe the current position of the vehicle.

According to the present invention, after the vehicle navigation systemis powered up and initialized, it first performs a pulse rate detectionroutine to determine whether the pulse rate setting of the navigationsystem corresponds to the pulse rate setting of the vehicle's odometer.Once the correct pulse rate setting is verified, the system performs adistance calibration routine which repeatedly applies a modificationfactor to the odometer reading to compensate for the factors affectingthe odometer's accuracy described above. According to a specificembodiment of the invention, both the pulse rate detection routine andthe distance calibration routine employ data from the vehicle's odometerand a GPS receiver. Specific embodiments of each of the routines will bediscussed in turn.

In order for the pulse rate detection routine to operate, two conditionsmust be met. First, because the pulse rate detection routine relies onGPS data to determine a reference distance measurement, the reliabilityof this data is important and therefore the GPS signal reception must bestable. Second, the speed of the vehicle must be above a threshold speedto ensure the collection of trustworthy distance data from both theodometer and the GPS receiver. In a specific embodiment, GPS velocitydata are used to determine whether this condition is met. In anotherspecific embodiment, the threshold speed is 30 MPH. Data which areobtained while either of the conditions are not met are not used for thepurpose of the adjustment.

An example of the operation of the pulse rate detection routine isdescribed with reference to the illustration of FIG. 2 and the flowchartof FIG. 3. In FIG. 2, the odometer of vehicle 200 has a pulse rate whichis approximately half of the pulse rate setting of the navigationsystem. As discussed above, the accumulation of data from the odometerand the GPS receiver for the distance comparison begins when both GPSreception is stable and the vehicle speed is high enough (step 302).Once these conditions are met, any distance data are cleared (step 304)and the accumulation of distance data from the GPS receiver and theodometer begins (step 306). If either the GPS data becomes unstable orthe vehicle slows below the speed threshold before the distancecomparison is made, the accumulated distance data are cleared and theprocedure begins again. Once a certain number of data points areaccumulated (step 308), the distance 202 measured by the odometer iscompared to the distance 204 measured using the GPS data from satellite206 (step 310). If the difference between the two distances is greaterthan a threshold amount (step 312), the navigation system is instructedto change the pulse rate setting (step 316), the accumulated distancedata is cleared, and the procedure is repeated until the pulse ratesetting is verified as correct. If the difference between the twodistances is below the threshold, pulse rate setting is assumed to becorrect and the pulse rate detection routine ends (step 314).

Several conditions must also be met for the operation of the distancecalibration routine. First, the pulse rate setting of the vehiclenavigation system must be properly set, i.e., the pulse rate detectionroutine must be completed. Second, as with the pulse rate detectionroutine, the GPS reception must be stable and the vehicle speed must bemaintained above a speed threshold. According to a specific embodiment,GPS velocity data are used to determine this condition. According to amore specific embodiment, a first speed threshold (e.g., 40 MPH) isemployed for determining when to start or restart the distancecalibration routine, and a lower second speed threshold (e.g., 35 MPH)is employed to determine when to pause operation of the routine, i.e.,ignore incoming data.

Third, the velocities reported by the GPS velocity data and the odometerdata must be close. If the difference is too large, this may be anindication that one or both sets of data may be either corrupted orerroneous. Therefore, if the difference is above a certain threshold,the incoming distance data are not used for the distance calibrationroutine.

Finally, in order for the distance calibration routine to make anadjustment to the modification factor (which is applied to the odometerreading), the adjustment must be consistent with the relationshipbetween the current vehicle position as determined by the navigationsystem and the current vehicle position as determined using the GPSdata. For example, if the GPS vehicle position is determined to be aheadof the navigation system's position estimate, then an increase in themodification factor would be consistent with this relationship while adecrease in the modification factor would not. The determination ofconsistency is described in more detail below.

The distance calibration routine has three operational states: DISABLED,RUNNING, and PAUSED. The DISABLED state is the initial state of theroutine at system start-up. The routine remains in the DISABLED stateuntil the first three conditions described above are met, i.e., untilthe pulse rate detection routine is completed, GPS reception is stable,and the first speed threshold is exceeded. Once the distance calibrationroutine is operating (i.e., in either the RUNNING or PAUSED states) itmay return to the DISABLED state for a number of reasons. For example,the routine will return to the DISABLED state if GPS data is notavailable for more than a programmable time period. According to aspecific embodiment, this time period is 20 seconds although it will beunderstood that this time period may be variable. In addition, theroutine will return to the DISABLED state if the user manually changesthe vehicle position reported by the navigation system. Finally, if thedistance calibration routine has been performed more than a programmablenumber of times thus indicating that further calibration of the odometerreading is no longer required, the routine will return to this state.

The diagram of FIG. 4 illustrates the manner in which the distancecalibration routine moves between the states described above. At systemstart-up vehicle 400 begins traveling along a residential road and asindicated, the status of the distance calibration routine is DISABLED.Upon accessing a freeway/highway, vehicle 400 exceeds the first speedthreshold at 402 and maintains sufficient speed for a period of time404. Assuming that GPS reception is stable, the routine's status becomesRUNNING and accumulation of distance data begins at 406. At 408, vehicle400 negotiates an interchange and the routine status becomes PAUSEDbecause of the potential unreliability of distance data accumulatedduring the maneuver. After the maneuver is completed, the status becomesRUNNING once again. At 410, the GPS signal is temporarily lost so theroutine's status becomes PAUSED. At 412 and 414, vehicle 400 slows belowthe second speed threshold temporarily causing the routine to enterPAUSED status. As illustrated, the routine moves between the PAUSED andRUNNING status according to the status of the conditions discussedabove.

Once the pulse rate detection routine is completed, GPS reception isstable and the vehicle speed is greater than the first speed thresholdfor a set period of time, the distance calibration routine enters theRUNNING state in which distance data are accumulated from the GPSreceiver and the odometer for comparison as described below. If one ormore of the conditions described above turns bad while in the RUNNINGstate, the routine enters the PAUSED state in which incoming distancedata from the GPS receiver and the odometer are considered unreliableand are not used for the comparison. For example, if the vehicle runsslower than the second speed threshold while in the RUNNING state, theroutine enters the PAUSED state. If the vehicle speed subsequentlyexceeds the first speed threshold (and GPS reception is stable) thestate of the distance calibration routine may change from PAUSED toRUNNING. Similarly, if a large velocity difference is observed betweenthe GPS data and the odometer data, the routine will change from theRUNNING state to the PAUSED state.

FIG. 5 is a flowchart illustrating the operation of the distancecalibration routine according to a specific embodiment of the invention.As discussed above, it is first determined whether the pulse ratedetection routine has been completed, GPS reception is stable and thevehicle speed is greater than a first speed threshold for a set periodof time (step 502) before the work variables employed by the distancecalibration routine are cleared and the routine is enabled (step 504).While the conditions discussed above continue to be met, distance dataare collected from the GPS receiver and the odometer (step 506). Whenenough data have been collected (step 508), an adjustment factor isdetermined for application to a modification factor which is, in turn,applied to the odometer reading (step 510). According to a specificembodiment, the number of data which are considered sufficient for thedetermination of the adjustment factor may vary depending upon thenumber of times the distance calibration routine has been executed. Forexample, the first time the routine is executed, 300 data points fromthe odometer might be required. Each time thereafter until the tenthexecution of the routine might require 100 data points from theodometer. Beginning at the tenth execution of the routine, only 50 datapoints might be required. It will be understood that many different suchschemes may be employed.

The modification factor is applied to the distance data from theodometer to compensate for the variations in vehicle conditionsdiscussed in the Background of the Invention. In a specific embodiment,the modification factor ranges between -10% and +10% in increments of0.1%. The adjustment factor determined in step 510 is the value by whichthe modification factor must be changed so that the distance datareported by the odometer more closely approximate the actual traveleddistance. The adjustment factor is determined through a comparison oftraveled distances reported by the GPS receiver and the odometer.According to a specific embodiment, the difference between the distancesas reported by the two different sensors is converted to a percentagewhich then becomes the adjustment factor. As will be discussed, thepercentage may be reduced depending upon a number of conditions. In anycase, if the comparison of the two reported distances shows that thecurrent modification factor is not sufficient the modification factor isadjusted by the adjustment factor to bring the two distances more inline with one another.

According to a specific embodiment, the amount by which the modificationfactor may be adjusted varies according to the number of times themodification factor has previously been adjusted. In other words, alimit is placed on the adjustment factor which is dependent upon thenumber of times the distance calibration routine has been executed. Thislimit decreases as the number of adjustments increases. For example, ifthe modification factor had not previously been adjusted, the limit onthe adjustment factor might be set at ±2.0%. If the modification factorhad previously been adjusted once or twice, the limit might be reducedto ±0.3%. Finally, after ten adjustments, the maximum allowableadjustment might be set at the minimum increment ±0.1% for eachadjustment thereafter. In this way, the effect of temporary conditionswhich cause the distance data to fluctuate dramatically may bediminished.

If the adjustment factor is determined to be nonzero (step 512), it isthen determined whether the adjustment factor is consistent with therelationship between the vehicle's position derived from the GPS data(the GPS position) and the vehicle's position derived from the odometerdata (the dead-reckoned position). This may best be understood withreference to FIG. 6. In the case where the modification factor isdetermined to be too small, the distance calibration routine generates apositive adjustment factor, i.e., an increase to the modificationfactor. A positive adjustment factor is consistent with the relationshipbetween the dead-reckoned position 600 and a GPS position which liesahead of position 600 and within region 602 (e.g., position 604). Thatis, in order to cause position 600 to more closely coincide withposition 604, it follows that the factor modifying the odometer datamust be increased.

Similarly, in the case where the modification factor is determined to betoo large, the distance calibration routine generates a negativeadjustment factor, i.e., a decrease to the modification factor. Anegative adjustment factor is consistent with a GPS position which liesbehind dead-reckoned position 600 and within region 606 (e.g., position608).

Conversely, a negative adjustment factor would not be consistent withGPS position 604, nor would a positive adjustment factor be consistentwith GPS position 608. For GPS reported positions lying outside regions602 and 606 (i.e, position 610), no adjustment to the modificationfactor is made.

Referring again to FIG. 5, when the adjustment factor has been found tobe consistent, the modification factor is then adjusted using theadjustment factor (step 516). The distance calibration routine thenemploys the new modification factor to adjust the vehicle positionreported by the navigation system (step 518). According to a specificembodiment, this adjustment is performed gradually so that the vehicleposition does not appear to the user to be jumping around the screen.The routine then determines whether the modification factor has beenadjusted more than some threshold number of times, e.g., 50 times (step520). If the threshold has been exceeded, it is assumed that themodification factor has been appropriately set and the distancecalibration routine is disabled. If the threshold has not been exceeded,the work variables are cleared (step 504) and the routine is repeated.

If, in step 512, the adjustment factor is determined to be zero, theroutine then determines whether the vehicle position nevertheless needsadjusting (step 528). In making this determination, the distancecalibration routine takes into account the difference between the GPSand dead-reckoned positions and the number of times the modificationfactor has been previously adjusted. The likelihood that the routinewill determine that the vehicle position should be adjusted increases asboth of these factors increase. That is, an adjustment of thedead-reckoned position is more likely if the GPS position and thedead-reckoned position are far apart and the modification factor hasbeen adjusted many times. Put another way, the dead-reckoned position isadjusted if the GPS position is beyond a circular region centered on thecurrent dead-reckoned position. The radius of this circular regionbecomes smaller as the number of adjustments to the modification factorincreases. This may be understood with reference to FIG. 7. Adjustmentsto the vehicle position are performed when the condition is in region700. Once it is determined that the vehicle position should be adjusted,the routine proceeds to step 518. If no adjustment is to be made to thevehicle position, the routine proceeds instead to step 520 by way ofstep 530 which is discussed below.

If in step 514, the adjustment factor is found to be inconsistent withthe relationship between the GPS and dead-reckoned positions, a doubtcounter is incremented (step 524) and a determination is made as towhether the doubt counter has exceeded a threshold value (step 526). Ifthe doubt counter has not exceeded the threshold, the work variables arecleared once again (step 504) and the routine is repeated. If, however,the doubt counter has exceeded the threshold, the distance calibrationroutine is disabled (step 522). The doubt counter allows the routine tobe aborted if it consistently generates adjustment factors which are notvalid. When the adjustment factor is determined to be zero (step 512)and the vehicle position does not need to be adjusted (step 528), thedoubt counter is cleared if the GPS position is within the region aroundthe dead-reckoned position as shown in FIG. 8 (step 530). Region 800 isdetermined with reference to a minimum distance region 802 within whichthe GPS position and the dead-reckoned position 804 are considered thesame. Region 800 has a radius of twice that of region 802 exceptdirectly in front of or behind dead-reckoned position 804 where theradius is three times that of region 802. Thus, for GPS positions 806and 808, the doubt counter would be cleared, but for GPS positions 810and 812, the routine would proceed to step 520 without clearing thecounter.

According to a specific embodiment of the invention, the distancecalibration routine also keeps track of large differences between theGPS position and the dead-reckoned position. The routine maintains a"Big Error" counter which is incremented each time the GPS position isdetermined to be beyond a maximum allowable distance either in front ofor behind the dead-reckoned position. As shown in FIG. 9, dead-reckonedposition 900 is at the center of a circle 902 having a radius equal tothe maximum allowable distance. If a GPS position is reported in eitherof shaded regions 904 and 906 (e.g., GPS position 908) the "Big Error"counter is incremented. For any GPS positions reported outside of theseregions (e.g., GPS position 910) the "Big Error" counter is decremented.When the "Big Error" counter exceeds a limit (5 in a specificembodiment) a "Big Error" condition flag is set which indicates that aGPS data update is required.

While the invention has been particularly shown and described withreference to specific embodiments thereof, it will be understood bythose skilled in the art that the foregoing and other changes in theform and details may be made therein without departing from the spiritor scope of the invention.

What is claimed is:
 1. A method for modifying an odometer reading in avehicle navigation system to compensate for odometer errors, the methodcomprising the steps of:obtaining a first distance measurement from theodometer, a first vehicle position being associated with the odometer;obtaining a second distance measurement from at least one other sensor,a second vehicle position being associated with the at least one othersensor; adjusting a modification factor, the modification factor beingfor modifying the odometer reading, wherein adjusting the modificationfactor comprises increasing the modification factor where the firstdistance measurement is less than the second distance measurement, anddecreasing the modification factor where the first distance measurementis greater than the second distance measurement, positive adjustment tothe modification factor only occurring where the second vehicle positionis ahead of the first vehicle position, and negative adjustment to themodification factor only occurring where the second vehicle position isbehind the first vehicle position; and modifying the odometer readingwith the modification factor.
 2. The method of claim 1 wherein the stepof obtaining a first distance measurement comprises receiving firstdistance data from the odometer and the step of obtaining a seconddistance measurement comprises receiving second distance data from theat least one other sensor, the method further comprising the step ofrepeating the obtaining steps before adjusting the modification factorif either of the first and second distance data are determined to beunreliable.
 3. The method of claim 1 wherein the at least one othersensor comprises a global positioning satellite (GPS) sensor whichreceives a GPS signal.
 4. The method of claim 3 further comprising thesteps of:determining whether reception of the GPS signal is stable forthe obtaining steps; proceeding to the adjusting step if the receptionof the GPS signal is determined to be stable during the obtaining steps;and repeating the obtaining steps if the reception of the GPS signal isdetermined to be unstable during the obtaining steps.
 5. The method ofclaim 3 further comprising the steps of:determining a vehicle speedusing the GPS signal; proceeding to the adjusting step if the vehiclespeed is determined to be greater than or equal to a threshold level;and repeating the obtaining steps if the vehicle speed is determined tobe less than the threshold level.
 6. A vehicle navigation systemoperable to compensate for odometer errors comprising:an odometer forobtaining a first distance measurement, a first vehicle position beingassociated with the odometer; at least one other sensor for obtaining asecond distance measurement, a second vehicle position being associatedwith the at least one other sensor; a central processing unit forcontrolling operation of the vehicle navigation system, the centralprocessing unit being operable toadjust a modification factor, themodification factor being for modifying the odometer reading, whereinadjusting the modification factor comprises increasing the modificationfactor where the first distance measurement is less than the seconddistance measurement, and decreasing the modification factor where thefirst distance measurement is greater than the second distancemeasurement, positive adjustment to the modification factor onlyoccurring where the second vehicle position is ahead of the firstvehicle position, and negative adjustment to the modification factoronly occurring where the second vehicle position is behind the firstvehicle position; andmodify the odometer reading with the modificationfactor.
 7. At least one computer readable medium containing programinstructions for modifying an odometer reading in a vehicle navigationsystem to compensate for odometer errors, the at least one computerreadable medium comprising:computer readable code for obtaining a firstdistance measurement from the odometer, a first vehicle position beingassociated with the odometer; computer readable code for obtaining asecond distance measurement from at least one other sensor, a secondvehicle position being associated with the at least one other sensor;computer readable code for adjusting a modification factor, themodification factor being for modifying the odometer reading, whereinadjusting the modification factor comprises increasing the modificationfactor where the first distance measurement is less than the seconddistance measurement, and decreasing the modification factor where thefirst distance measurement is greater than the second distancemeasurement, positive adjustment to the modification factor onlyoccurring where the second vehicle position is ahead of the firstvehicle position, and negative adjustment to the modification factoronly occurring where the second vehicle position is behind the firstvehicle position; and computer readable code for modifying the odometerreading with the modification factor.
 8. At least one computer readablemedium containing program instructions for selecting a pulse ratesetting to correspond to a pulse rate associated with an odometer in avehicle navigation system, the at least one computer readable mediumcomprising:computer readable code for determining a difference between afirst distance measurement from the odometer and a second distancemeasurement from at least one other sensor; and computer readable codefor changing the pulse rate setting to correspond to the pulse rate ifthe difference is greater than or equal to a threshold level, and forleaving the pulse rate setting unchanged if the difference is less thanthe threshold level.